Skip to main content
Version: 11.0

Discovery APIs

GET /api/v2/scheduler/status/all

Description

Get the list of all discoveries. Returns list with basic information about all discovery jobs, regardless of their type and frequency - i.e. device discovery, cloud discovery, service flow discovery, and manual CMDB push.

Header Parameters

NameDescriptionTypeRequiredDefault
AuthorizationBearer API token/key. The format is Bearer <API_key>StringYes
orgIdThe ID of the organization. The format is OrgId:OrgNameStringYes
siteIdThe ID of the site. The format is SiteId:SiteNameStringYes

Query Parameters

NameDescriptionTypeRequiredDefault
pagePage number, starting from 1StringNo1
sizeNumber of devices per page. Minimum size is 1StringNo10
sortSorting criteria in the format: property, (asc, desc). Multiple sort criteria are supportedStringNo
statusDiscovery status. Allowed values are ACTIVE, ALREADY_UPDATING, BLOCKED, COMPLETE, CREATED, DECOMMISSIONED, DELETED, ERROR, EXCLUDED, EXECUTED, FAILED, FAILURE, HIDDEN, INACTIVE, INCOMPLETE, IN_PROGRESS, MISSED, MODIFIED, NOT_ALIVE, NOT_SCHEDULED, PARTIAL, PAUSED, PURGED, QUEUED, REDUCED, REJECTED, REQUESTED, RESCHEDULED, RESUMED, RETIRED, SCHEDULED, STARTED, SUBMITTED, SUCCESS, TIMEOUT, TOTAL, TRIGGERED, UNKNOWN, UNPURGED, UNREACHABLE, UPDATINGStringNo
triggerTypeDiscovery type - device discover (network, meraki), cloud discovery (AWS or Azure), service flow (pcap), or manual CMDB push. Allowed values are NETWORK_DISCOVERY, AZURE_DISCOVERY, AWS_DISCOVERY, PCAP_COLLECTION, CMDB_PUSH, CISCO_MERAKI_DISCOVERYStringNo

CURL Example

The below code snippet shows an example of the API call, where <NCE-IP>, <ORG-ID>, <SITE-ID> & <API-TOKEN> are variables.

curl --location 'https://<NCE-IP>/api/v2/scheduler/status/all?page=1&size=25&sort=schedule.startTime%2CDESC&status=IN_PROGRESS&triggerType=NETWORK_DISCOVERY' \
--header 'orgId: <ORG-ID>' \
--header 'siteId: <SITE-ID>' \
--header 'Authorization: Bearer <API-TOKEN>'

Response

Upon a successful request, the API returns Status code 200 with the following body:

NameDescriptionType
pageInfoGeneral information about the page with returned resultsObject
- numberPage number returnedInteger
- sizePage size returnedInteger
- totalRecordsTotal number of recordsInteger
pageDataList of records detailsArray
- siteIdSite IDString
- requestIdDiscovery request IDString
- triggerTypeDiscovery request trigger typeString
- startTimeDiscovery request start timeString
- endTimeDiscovery request end timeString
- intervalDiscovery request recurrency interval in secondsString
- statusDiscovery request current statusString
- jobStatusDiscovery job details. Each element in the object is constructed by "status_name":<number_of_jobs>Object
- requestNameDiscovery request nameString
- totalJobsTotal number of jobs in the discovery requestString
- requestTypeDiscovery request typeString
- lastStartedDiscovery request last start timeString
- lastCompletedDiscovery request last completed timeString
- lastUpdateTimeLast time when the record was updated. The format is timeyyyy-MM-ddThh:mm:ss.tttZString
- progressStatusDiscovery request progressDouble

GET /api/v2/scheduler/devices/{requestId}

Description

Get details about a particular discovery by request ID, including device, cloud, bulk, service flow, and manual CMDB schedules.

Path Parameters

NameDescriptionTypeRequiredDefault
requestIdDiscovery request IDStringYes

Header Parameters

NameDescriptionTypeRequiredDefault
AuthorizationBearer API token/key. The format is Bearer <API_key>StringYes
orgIdThe ID of the organization. The format is OrgId:OrgNameStringYes
siteIdThe ID of the site. The format is SiteId:SiteNameStringYes

CURL Example

The below code snippet shows an example of the API call, where <NCE-IP>, <ORG-ID>, <SITE-ID>, <API-TOKEN> & <REQUEST-ID> are variables.

curl --location 'https://<NCE-IP>/api/v2/scheduler/devices/<REQUEST-ID>' \
--header 'orgId: <ORG-ID>' \
--header 'siteId: <SITE-ID>' \
--header 'Authorization: Bearer <API-TOKEN>'

Response

Upon a successful request, the API returns Status code 200 with the following body:

NameDescriptionType
refString
docStatusString
lastUpdateTimeLast time when the record was updated. The format is timeyyyy-MM-ddThh:mm:ss.tttZString
lastCMDBUpdateTimeLast time the record was pushed to the CMDB. Applies for the manual CMDB push discovery record. The format is timeyyyy-MM-ddThh:mm:ss.tttZString
cmdbSysIdCMDB ID associated with the record. Applies for the manual CMDB push discovery recordString
updateLogString
orgIdOrganization IDString
siteIdSite IDString
groupIdGroup IDString
requestIdDiscovery request IDString
requestNameDiscovery request nameString
parentDiscovery request parentString
ipRangeDiscovery request IP rangeArray of objects
- ipAddressFromRange IP startString
- ipAddressToRange IP endString
maskRangeDiscovery request IP and maskArray of objects
- ipAddressMaskMask range IP startString
- maskRange maskString
fqdnAddressDiscovery request list of FQDN v4 hostsArray of objects
- deviceIdDevice IDString
- fqdnDevice fully qualified domain name (FQDN)String
- hostNameDevice hostnameString
- ipDevice IPString
fqdnv6AddressDiscovery request list of FQDN v6 hosts. The objects are with the same structure as for fqdnAddressArray of objects
ignoredFqdnAddressDiscovery request list of FQDN v4 hosts that should be excludedArray of strings
applicationsApplications to be pushed by the manual CMDB push requestString
domainNot in useString
forestNot in useString
subDomainNot in useString
targetIpNot in useString
scomMethodologyNot in useString

POST /api/v2/scheduler/table/{requestId}

Description

Get the list of devices scanned by a particular device discovery by request ID.

Path Parameters

NameDescriptionTypeRequiredDefault
requestIdDiscovery request IDStringYes

Header Parameters

NameDescriptionTypeRequiredDefault
AuthorizationBearer API token/key. The format is Bearer <API_key>StringYes
orgIdThe ID of the organization. The format is OrgId:OrgNameStringYes
siteIdThe ID of the site. The format is SiteId:SiteNameStringYes

Query Parameters

NameDescriptionTypeRequiredDefault
currentPagePage number, starting from 1StringYes1
pageSizeNumber of devices per page. Minimum size is 1StringYes25
filterStatusReachability status to be filtered onStringNo
sortFieldSort fieldStringNo
sortOrderSort order. Allowed values asc, descStringNoasc

CURL Example

The below code snippet shows an example of the API call, where <NCE-IP>, <ORG-ID>, <SITE-ID>, <API-TOKEN> & <REQUEST-ID> are variables.

curl --location --request POST 'https://<NCE-IP>/api/v2/scheduler/table/<REQUEST-ID>?currentPage=9&pageSize=25&filterStatus=&sortField=lastUpdateTime&sortOrder=asd' \
--header 'orgId: <ORG-ID>' \
--header 'siteId: <SITE-ID>' \
--header 'Authorization: Bearer <API-TOKEN>'

Response

Upon a successful request, the API returns Status code 200 with the following body:

NameDescriptionType
pageInfoGeneral information about the page with returned resultsObject
- numberPage number returnedInteger
- sizePage size returnedInteger
- totalRecordsTotal number of recordsInteger
pageDataList of records detailsArray of objects
- refString
- docStatusString
- lastUpdateTimeLast time when the record was updated. The format is timeyyyy-MM-ddThh:mm:ss.tttZString
- lastCMDBUpdateTimeLast time the record was pushed to the CMDB. The format is timeyyyy-MM-ddThh:mm:ss.tttZString
- cmdbSysIdCMDB ID associated with the recordString
- updateLogString
- orgIdOrganization IDString
- siteIdSite IDString
- groupIdGroup IDString
- hostNameDevice hostnameString
- fqdnDevice fully qualified domain name (FQDN)String
- ipAddressDevice IPv4String
- ipv6AddressDevice IPv6String
- subDomainNot in useString
- domainNot in useString
- forestNot in useString
- devTypeDevice typeString
- devSubTypeDevice subtypeString
- deviceIdDevice IDString
- reachableListList of protocols able to connect with the deviceArray of strings
- unreachableListList of protocols able to connect with the device. Each element in the object is constructed by "protocol":"Failure_reason"Object
- reachableMapString
- managersList of device managers namesArray of strings
- reachabilityComplete list of protocols attempted to discover the device, and reasons for success or failure. Each element in the object is constructed by "protocol":"reason"Object